package com.ruoyi.web.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
@TableName(value = "mes_supplier")
public class Supplier {
    @TableId
    private String pid;
    @Excel(name = "供应商编码")
    private String supplierCode;
    @Excel(name = "统一社会信用代码")
    private String usci;
    @Excel(name = "供应类型", combo = {"辅料", "纸张"}, readConverterExp = "0=辅料,1=纸张")
    private String type;
    @Excel(name = "供应商简称")
    private String shortName;
    @Excel(name = "供应商名称")
    private String name;
    @Excel(name = "供应渠道")
    private String channel;
    @Excel(name = "开户银行")
    private String bank;
    @Excel(name = "银行账号")
    private String bankCode;
    @Excel(name = "主联系人")
    private String mainContact;
    @Excel(name = "联系电话")
    private String phone;
    /** 所属地区 */
    private String area;
    /** 所属公司 */
    private String company;
    /** 采购专员 */
    private String buyer;
    /** 年采购量 */
    private BigDecimal yearOrderQuantity;
    /** 期初应付 */
    private BigDecimal initialPayable;
    /** 应付金额 */
    private BigDecimal payable;
    /** 供应地址 */
    private String addr;
    /** 公司邮箱 */
    private String email;
    /** 公司电话 */
    private String tel;
    /** 公司传真 */
    private String fax;
    /** 状态 */
    private String status;

    /** 创建者 */
    private String createBy;
    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /** 更新者 */
    private String updateBy;
    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /** 相关人员 */
    @TableField(exist = false)
    private List<SupplierPerson> supplierPersonList;
    /** 账期结余 */
    @TableField(exist = false)
    private List<SupplierCheckout> supplierCheckoutList;
}
